<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
</html>
<!-- - #笔记要求

##笔记
- 每日边看视频边记录笔记，然后每个知识点需要自己解释一下
- 以及 每日未解决的问题可以记录下来
- 记录每日完成多少代码量（多少行）
- 今天做了什么
有做项目的话，项目的进度 -->
自定义函数:
一个自定义名称后面带有括号

匿名函数

可以创建一个没有名称的函数：
function() {
  alert('hello');

这个函数叫做匿名函数  没有函数名! 不会自己做任何事情。

还可以将匿名函数分配为变量的值使用函数表达式定义一个函数(函数声明不能起作用)


在结尾加上一对括号，让函数立即被执行

写法：
最前最后加括号

(function(){alert(1);}());

function外面加括号

(function(){alert(1);})();

function前面加运算符，
常见的是!与void
!
function(){alert(1);}();
 
void function(){alert(2);}(); 


for(var i=1; i<10; i++) { //循环语句
     
if(i==num){ //条件语句


var num = 9; //声明、赋值语句

loop: //标签语句

console.log(num); //表达式语句，输出：5

表达式是语句的构成部分，而语句则又可以组成可执行代码块。

递归函数

递归函数是一种算法，而不是真正的具有这种函数；

编程语言中，函数直接或间接调用函数本身，则该函数称为递归函数；

init这个函数返回的是一个内部函数 
一旦执行完之后它的局部变量就变得不可访问了（不再引用了）
这里就可以用到闭包函数